#include "stdio.h"

typedef void (*MyPointerFunc)(void);

void FuncTest0(void);
void FuncTest1(void);
void FuncTest2(void);
void FuncTest3(void);
void FuncTest4(void);

MyPointerFunc pointFuncArray[5] = {
    FuncTest0, FuncTest1, FuncTest2, FuncTest3, FuncTest4
};

void FuncTest0(void)
{
    printf("This func %s\r\n", __func__);
}

void FuncTest1(void)
{
    printf("This func %s\r\n", __func__);
}

void FuncTest2(void)
{
    printf("This func %s\r\n", __func__);
}

void FuncTest3(void)
{
    printf("This func %s\r\n", __func__);
}

void FuncTest4(void)
{
    printf("This func %s\r\n", __func__);
}

void main (void)
{
    int i = 0;
    printf("hello world!\r\n");
    for (i=0; i<5; i++) {
        pointFuncArray[i]();
    }
}
